package com.caigou.mapper.cms;

import com.caigou.bean.cms.entity.Video;
import com.caigou.bean.cms.param.VideoQueryParam;
import com.caigou.bean.cms.param.VideoRecycleQueryParam;
import com.caigou.bean.cms.param.VideoUseParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface VideoMapper {
    Video selectByPrimaryKey(Integer id);
    int deleteByPrimaryKey(Integer id);
    int insert(Video video);
    int insertSelective(Video video);
    int updateByPrimaryKey(Video video);
    List<Video> queryVideo(@Param("folderId")Integer folderId, @Param("keyword")String keyword);
    List<Video> queryVideoByPath(@Param("path")String path, @Param("keyword")String keyword);
    List<Video> advancedQueryVideoByPath(VideoQueryParam videoQueryParam);
    int updateVideo(Video video);
    Long getVideoTotalSize();
    int updateVideoUse(VideoUseParam videoUseParam);
    int getVideoCount(@Param("folderId")Integer folderId);
    List<Video> queryVideoInRecycle(VideoRecycleQueryParam videoRecycleQueryParam);
    List<Integer> listVideoIdInRecycle();
}
